<html>
    <head>
        <title>最佳实践</title>
    </head>
    <body>
        <script>
            /*
                        四、最佳实践

                                 你可以自由设计你的DTO类。但是，你可能需要遵循一些最佳实践和建议。


                                 1、通用原则

                                            DTO应该是可很好地序列化的，因为它们通常是序列化和反序列化的（JSON或其他格式）。

                                            如果你有另一个带有参数的构造函数，建议创建一个空的（无参数的）公共构造函数。


                                            DTO不应包含任何业务逻辑，除了一些正式的验证代码。(Dto要保持纯净)

                                            不要从实体派生DTO，并且不引用实体。应用程序启动模板已经通过分隔项目来防止它。

                                            如果你使用自动对象到对象映射库，例如AutoMapper，请启用映射配置验证以防止潜在错误。


                                2、输入Dto原则  Input DTO Principles 

                                            仅定义用例所需的属性。不要包含不用于用例的属性，如果你这样做会使开发人员感到困惑。

                                            不要在不同的应用程序服务方法之间重用输入DTO。

                                            因为，不同的用例需要和使用不同的DTO属性，这导致某些情况下某些属性没有使用，这使得更难理解和使用服务，并在未来导致潜在的错误。

                    */
        </script>
    </body>
</html>